﻿#ifndef SERVIDOR_CLIENTES_H
#define SERVIDOR_CLIENTES_H

#include "Cliente.h"
#include "../controller/Logger.h"

#include <QDebug>
#include <QString>
#include <QList>
#include <QFile>
#include <QMutex>

namespace model
{
	class ServidorClientes
	{
		public:
			ServidorClientes( QString& );

			Cliente* getCliente( const QString& );
			Cliente* cadastrarCliente( const QString& );
			void logoutCliente( Cliente* );

			void save();

			virtual ~ServidorClientes();
		private:
			QString path;
			QFile *file;
			QList<Cliente*> clientes;
			QMutex mutex;

			void restore();
			Cliente* _getCliente( const QString& );
	};
}

#endif
